home *** CD-ROM | disk | FTP | other *** search
/ Amiga Developer CD 2.1 / Amiga Developer CD v2.1.iso / Extras / BOOPSI / led_ic / smakefile < prev    next >
Encoding:
Makefile  |  1996-03-17  |  3.4 KB  |  125 lines

  1. MODNAME=        led
  2. VERSION=        42
  3.  
  4. REMOTE=            V$(VERSION):src/workbench/classes/images/led
  5.  
  6. LD_FILE=        $(MODNAME).ld
  7. LD_STRIP=        $(MODNAME).image
  8.  
  9. C_COMPILER=        SC
  10. C_COMPILER_OPTS=    NOVERSION DATA=FAR OPTSIZE OPTIMIZE OPTGLOBAL NOSTKCHK PARMS=REG \
  11.             OPTIMIZE NMINC STRMERGE STREQ MCCONS COMNEST UNSCHAR DEBUG=L \
  12.             NOICONS INCDIR=include/ INCDIR=INCLUDE:
  13.  
  14. ASSEMBLER=              asm
  15. ASSEMBLER_OPTS=         -iinclude/ -iINCLUDE:
  16.  
  17. LINKER=            slink
  18. LINKER_OPTS=        SC SD NOICONS MAP $(MODNAME).map HLSXF PLAIN SWIDTH 16
  19. LINKER_OPTS_STRIP=    ND NOICONS
  20.  
  21. C_SOURCES=        classbase.c dispatch.c
  22. ASM_SOURCES=        classinit.asm endcode.asm
  23. OBJECTS=        classinit.o classbase.o dispatch.o endcode.o
  24.  
  25. STARTUP=
  26. LIBS=            LIB:debug.lib LIB:amiga.lib LIB:sc.lib
  27.  
  28.  
  29. ##############################################################################
  30. # Build the stripped load file...
  31. #
  32. $(LD_STRIP):    $(LD_FILE)
  33.         $(LINKER) FROM $(LD_FILE) TO $(LD_STRIP) $(LINKER_OPTS_STRIP)
  34.  
  35.  
  36. ##############################################################################
  37. # Build the load file...
  38. #
  39. $(LD_FILE):    $(OBJECTS) $(LIBS)
  40.         $(LINKER) <with <
  41. FROM $(STARTUP) $(OBJECTS) TO $(LD_FILE) LIB $(LIBS) $(LINKER_OPTS)
  42. <
  43.  
  44.  
  45. ##############################################################################
  46. # Default rules...
  47. #
  48. .c.o:
  49.     $(C_COMPILER) $(C_COMPILER_OPTS) $*.c
  50.  
  51. .asm.o:
  52.     $(ASSEMBLER) $(ASSEMBLER_OPTS) $*.asm
  53.  
  54.  
  55. ##############################################################################
  56. # All dependencies...
  57. #
  58. classinit.o:    classinit.asm $(MODNAME)_rev.rev classbase.i
  59. classbase.o:    classbase.c classbase.h classdata.h
  60. endcode.o:    endcode.asm
  61. dispatch.o:    dispatch.c classbase.h classdata.h
  62.  
  63.  
  64. ##############################################################################
  65. # Bump the version...
  66. #
  67. version:
  68.     @bumpRev $(VERSION) $(MODNAME)_rev
  69.  
  70.  
  71. ##############################################################################
  72. # Delete all object files
  73. #
  74. clean:
  75.     -delete $(OBJECTS)
  76.     -delete $(LD_FILE) $(MODNAME).map
  77.  
  78.  
  79. ##############################################################################
  80. # Release the current build to the server...
  81. #
  82. internal:
  83.     -@delete $(REMOTE)/((\#?.(c|h|asm|i|ld|rev|doc|library))|lmkfile)
  84.     -@protect ((\#?.(c|h|asm|i|ld|rev|doc))|lmkfile|$(LD_STRIP)) +r quiet
  85.     -@copy \#?.(strip|ld|doc|library) \#?_rev.\#? $(REMOTE)
  86.     -@copy $(MODNAME).h V$(VERSION):include/images
  87.     -@copy $(MODNAME).i V$(VERSION):include/images
  88.     -@copy $(MODNAME)_ic.doc V$(VERSION):doc
  89.     -@copy test.c V$(VERSION):src/examples/images/$(MODNAME)_test.c
  90.     -@copy test V$(VERSION):src/examples/images/$(MODNAME)_test
  91.  
  92. install:
  93.     -copy $(LD_STRIP) sys:classes/images/$(MODNAME).image
  94.     -flushlibs
  95.  
  96. headers:
  97.     -@makedir include:images
  98.     copy led.h include:images clone
  99.     copy led.i include:images clone
  100.  
  101.  
  102. ##############################################################################
  103. # Build autodoc
  104. #
  105. doc:
  106.     AD $(C_SOURCES) TO $(MODNAME)_ic.doc INDEX
  107.     ad2ag $(MODNAME)_ic.doc TO T:
  108.     copy T:$(MODNAME)_ic $(MODNAME)_ic
  109.     copy T:$(MODNAME)_ic.info $(MODNAME)_ic.info
  110.     delete T:$(MODNAME)_ic
  111.  
  112.  
  113. ##############################################################################
  114. # Build archive
  115. #
  116. archive:
  117.     -@makedir DNJ:dist/agdoc
  118.     copy $(MODNAME).(h|i) DNJ:dist/include/images
  119.     copy $(LD_STRIP) DNJ:dist/classes/images/$(MODNAME).image
  120.     copy $(MODNAME)_ic.doc DNJ:dist/doc
  121.     copy $(MODNAME)_ic DNJ:dist/agdoc
  122.     copy $(MODNAME)_ic.info DNJ:dist/agdoc
  123.     -@copy test.c DNJ:dist/src/examples/images/$(MODNAME)_test.c
  124.     -@copy test DNJ:dist/src/examples/images/$(MODNAME)_test
  125.